The present disclosure relates generally to delivering and presenting multimedia content.
Streaming is a technique for delivering multimedia content to end-users. Streaming involves continuously displaying media content to a user while the content is being delivered to the user. Streaming can be used to deliver various types of digital media to end-users. Streaming media can include, for example, recorded (e.g., recorded video) and/or live media content (e.g., video from a user's webcam).
Publishers can create content for streaming by encoding content (e.g., audio and video) with one or more codecs. A streaming media server can then receive and transmit created streams over a network (e.g., the Internet) to a client device. The client device can include a client-side player that decompresses and displays streams for an end-user.
Streaming media environments can use virtual machines to present streaming content to end-users. A virtual machine is a self-contained operating environment that allows programs to be run within the virtual machine platform itself as though the virtual machine were a stand-alone computer. Virtual machines can be programs themselves, embedded within an operating system or other software application. One example of a virtual machine is the Adobe® Flash® Player runtime (available from Adobe Systems Incorporated of San Jose, Calif.), which can be used to run Flash® files including ActionScript and Shockwave Flash (SWF) files.
Customized image viewers and video players can run on virtual machines and present streaming media to end-users. These customized applications can be used to facilitate web applications in providing interactive rich media content. Applications configured to execute on the Adobe® Flash® platform can be included in SWF files, which can be processed by client-side SWF player software. The media content itself can be kept separate from the SWF file and can be loaded into a SWF for playback at runtime.
Playlists can be used during streaming. A playlist can include a list of streams queued up for playback. The streams in the playlist can be streamed to the user and played from a source (e.g., the streaming media server) one after the other in the order they are queued. Streams from a playlist can be presented to end-users through customized image viewers, video players and audio players, which can be associated with various other applications.